//
//  ViewController.m
//  Rac
//
//  Created by 崔博 on 2017/12/28.
//  Copyright © 2017年 崔博. All rights reserved.
//

#import "ViewController.h"

#import "BBview.h"
#import "HomeViewModel.h"
#import <ReactiveObjC/RACReturnSignal.h>
@interface ViewController ()

@property (weak, nonatomic) IBOutlet UITextField *field;
@property (nonatomic, strong) HomeViewModel * vm;
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
   
}

- (void)test{
//    [[self.vm.loadHomeCommand execute:nil] subscribeNext:^(id  _Nullable x) {
//        
//    }];
//    RACSubject *sub = [RACSubject subject];
//    [sub subscribeNext:^(id  _Nullable x) {
//         
//    }];
    //    [[_field.rac_textSignal flattenMap:^__kindof RACSignal * _Nullable(NSString * _Nullable value) {
    //        NSLog(@"%@",value);
    //        return [RACSignal return:@"123"];
    //    }] subscribeNext:^(id  _Nullable x) {
    //        NSLog(@"%@",x);
    //    }];;
    
    
    //    [[_field.rac_textSignal map:^id _Nullable(NSString * _Nullable value) {
    //        NSLog(@"-----%@",value);
    //        return value;
    //    }] subscribeNext:^(id  _Nullable x) {
    //
    //    }];;
    // 信号中的信号
    //    RACSubject * signOfsig = [RACSubject subject];
    //    RACSubject * sub = [RACSubject subject];
    //    [signOfsig subscribeNext:^(id  _Nullable x) {
    //        NSLog(@"信号中的信号值:%@",x);
    //        [x subscribeNext:^(id  _Nullable x) {
    //            NSLog(@"信号的值：%@",x);
    //        }];
    //    }];
    //    [signOfsig flattenMap:^__kindof RACSignal * _Nullable(id  _Nullable value) {
    //
    //        return value;
    //    }];
    //
    //    [signOfsig sendNext:sub];
    //    [sub sendNext:@"1"];
    //
    //    RACSubject * sigalA = [RACSubject subject];
    //    RACSubject * sigalB = [RACSubject subject];
    //    [[sigalB concat:sigalB] subscribeNext:^(id  _Nullable x) {
    //        NSLog(@"%@",x);
    //    }];
    //    [sigalA sendNext:@"1"];
    //    [sigalB sendNext:@"2"];
    //    [sigalB sendCompleted];
    //    [sigalA subscribeNext:^(id  _Nullable x) {
    //
    //    }];
    //
    //    [sigalB subscribeNext:^(id  _Nullable x) {
    //
    //    }];
    
//        [[_field.rac_textSignal bind:^RACSignalBindBlock _Nonnull{
//            return ^RACSignal * (NSString * value, BOOL * stop){
//                NSLog(@"%@",value);
//                if (value.length < 11) {
//                    value = [value substringFromIndex:10];
//                }
//                return [RACReturnSignal return:value];
//            };
//        }] subscribeNext:^(id  _Nullable x) {
//            NSLog(@"%@处理完的数据",x);
//        }];
    
}
//- (HomeViewModel *)vm
//{
//    if (!_vm) {
//        _vm = [[HomeViewModel alloc] init];
//    }
//    return _vm;
//}
@end
